package practiceafterclass.grammarexercise;

/**
 * @author shkstart
 * @date 2022/4/15 - 22:20
 */
/*3.一个数如果恰好等于它的因子之和，这个数就称为"完数"。例如6=1＋2＋3。
  编程 找出1000以内的所有完数。（因子：除去这个数本身的其它约数）*/
public class Completion {
    public static void main(String[] args) {
        for (int i = 1; i <= 1000; i++ ) {
            int factor = 0;
            for (int j = 1; j <= i/2; j++ ) {//未优化前: j < i;
                if (i % j == 0 ) {
                    factor += j;
                }
            }

            if (factor == i ) {
                System.out.println(i);
            }
        }

//        5. 从控制台输出如下结构：
//
//        ******
//        *****
//        ****
//        ***
//        **
//        *

        for (int k = 1; k <= 6; k++ ) {
            for (int l = 1; l <= 7 - k; l++ ) {
                System.out.print("*");
            }
            System.out.println();
        }
    }
}
